/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package asistenciadb;

/*=================================***Autor: Contre17***=================================*/
import java.util.logging.*;
import javax.swing.JLabel;
import java.util.Date;
import java.text.*;
/*Extendemos la clase de JLabel para que se comporte como tal e implementamos el metodo Runnable*/
public class Hora extends JLabel implements Runnable {

    private Thread t;/*Crear variable privada de tipo Thread(hilo)*/
    private String formato;/*Crear variable privada de tipo String*/

    public Hora() {/*Constructor por defecto de la clase*/
        t = new Thread(this);/*Inicializamos t*/
        formato = "HH:mm:ss";/*Inicializamos formato HORAS:minutos:segundos*/
        t.start();/*Ponemos nuestro hilo en ejecucion*/
    }/*Fin de Constructor por defecto*/

    public Hora(String format) {/*Constructor con parametro por si queremos darle otro formato a la hora*/
        t = new Thread(this);/*Inicializamos t*/
        formato = format;/*Le damos un nuevo formato a la hora*/
        t.start();/*Ponemos nuestro hilo en ejecucion*/
    }/*Fin de Constructor con parametros*/

    public void run() {/*Implementamos el metodo abstracto run*/
        while (true) {/*Ciclo infinito para que siempre se actualice la hora*/
            DateFormat D_Formato = new SimpleDateFormat(formato);/*Crear e inicializar variable tipo DateFormat*/
            Date date = new Date();/*Crear e inicializar variable tipo Date*/
            this.setText(D_Formato.format(date));/*Ponemos la variable date en el JLabel*/
            try {
                Thread.sleep(1000);/*El hilo duerme 1000 miliseg, es decir 1 seg*/
            } catch (InterruptedException ex) {/*Excepciones*/
                Logger.getLogger(Hora.class.getName()).log(Level.SEVERE, null, ex);
            }/*Fin de Excepciones*/
        }/*Fin del Ciclo*/
    }/*Fin de metodo run*/
}/*Fin de la clase*/

